package org.jeecg.board.mapper;

import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.jeecg.board.dto.*;
import org.jeecg.board.entity.RptStatisticansValue;
import org.jeecg.trace.entity.MesUnitStatus;

import java.time.LocalDate;
import java.util.List;
import java.util.Map;

/**
 * &#064;Description
 * &#064;Author  LiCY
 * &#064;Date  2023/4/25
 */
@Mapper
public interface QisBoardMapper {

    List<RptStatisticansValue> getLineYieldList(@Param("param") Map<String, Object> param);

    List<RptStatisticansValue> getLineConformityList(@Param("param") Map<String, Object> param);

    List<RptStatisticansValue> getLineSemiScrapList(@Param("param") Map<String, Object> param);

    List<RptStatisticansValue> getLineProductScrapList(@Param("param") Map<String, Object> param);

    List<QisFtqScrapBoardDataDTO> getMonthProductFtqAndScrap();

    List<QisInspectionBoardDataDTO> getMonthInspectionPassRate();

    String getPreShiftName(@Param("shiftId")String shiftId,@Param("shift") String shift);

    List<BoardDataDTO> getShiftOpUnhealthyList(@Param("shiftDate")LocalDate curShiftDate,@Param("shift") String shift);

    List<QisFtqScrapBoardDataDTO> getLastSevenDaysProductFtqAndScrap();

    List<QisFtqScrapBoardDataDTO> getLastThreeDaysShiftProductFtqAndScrap();

    QisBoardDataDTO getLineQisData(@Param("typ") String typ,@Param("woid") String woid,@Param("shiftDate") LocalDate shiftDate,@Param("shift") String shift);

    List<UnhealthyBoardDataDTO> getUnhealthyByLine(@Param("typ") String typ,@Param("woid") String woid,@Param("shiftDate") LocalDate curShiftDate,@Param("shift") String shift);
}
